.TH std::ranges::adjacent_view::iterator::operator[] 3 "2024.06.10" "http://cppreference.com" "C++ Standard Libary"
.SH NAME
std::ranges::adjacent_view::iterator::operator[] \- std::ranges::adjacent_view::iterator::operator[]

.SH Synopsis
   constexpr auto operator[]( difference_type n ) const  (since C++23)
       requires ranges::random_access_range<Base>;

   Returns an element at specified relative location.

   Let current_ be an underlying array of iterators.

   Equivalent to:

 return __tuple_transform([&](auto& i) -> decltype(auto) { return i[n]; }, current_);

.SH Parameters

   n - position relative to current location

.SH Return value

   The element at displacement n relative to the current location.

.SH Example


// Run this code

 #include <ranges>
 #include <tuple>

 int main()
 {
     constexpr static auto v = {0, 1, 2, 3, 4, 5};
     //                               └──┬──┘
     //                                  └─────────────────┐
     constexpr auto view = v | std::views::adjacent<3>; // │
     //                 ┌───────────────────┬──────────────┘
     //                 │                ┌──┴──┐
     static_assert(view[2] == std::tuple{2, 3, 4});
 }
